/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

//var articles=document.getElementsByTagName("article");

/* Intervalo par alternar las imagenes frontales  */
//setTimeout(switchFrontImg, 5000);
var frontImgIntervanID=setInterval(switchFrontImg,10000);


/*********************************************************
 *                  Variables globales                   */


/* Funcion para establecer el ID de los divs de noticias relevantes */
function setRelevantNewID(){
  
  var artClass,artHref;
  for (i=0;i<articles.length;i++){
    artClass=articles[i].getAttribute("class");
    
    if (artClass.split(" ")[2]=="node-noticia-relevante" || artClass.split(" ")[2]=="node-relevant-new"){
      /* Estamos con un articulo de la página principal, ahora procedemos a
       * obtener la direccion del nodo, navegando por el arbol DOM
       * <article class="node-noticia-relevante">
       *   <div>
       *   <div ...>            <-- Bajamos por este hijo [1]
       *     <div>
       *     <div ...>          <-- Bajamos por este hijo [1]
       *       <div href="">    <-- Obtenemos el atributo href de este hijo, que sera el ID
       *     </div>
       *   </div>
       * </article>  */
      
      artHref=articles[i].childNodes[1].childNodes[1].childNodes[0].getAttribute("href");
      articles[i].setAttribute("id", artHref);
      
      if (articles[i].addEventListener){
        articles[i].addEventListener("mouseover", showRelevantContent,false);
        articles[i].addEventListener("mouseout", hideRelevantContent, false);
      } else if (articles[i].attachEvent){
        articles[i].attachEvent("onmouseover",showRelevantContent);
        articles[i].attachEvent("onmouseout",hideRelevantContent);
      }
    }
  } 
}

/*la variable evt contiene automaticamente la referencia al evento que se ha
 * generado al pasar el raton sobre el objeto                                 */
function showRelevantContent(evt){
  /* Aqui creo un div que va a contener la info debida del nodo, pillo*/
  var newDiv = document.createElement("div");
  
  /* window.event es para obtener los datos eninternet explorer */
  var posX=evt.clientX || window.event.srcElement.offsetX;
  var posY=evt.clientY || window.event.srcElement.offsetY;
  
  //copiamos el contenido de la noticia, eliminando el link a "read more"
  newDiv.innerHTML=this.innerHTML;
  newDiv.removeChild(newDiv.childNodes[5]);

  newDiv.setAttribute("id", this.getAttribute("id")+"-2");
  newDiv.setAttribute("class", "relevantPopup");  
  //el estilo de la clase relevantPopup se define en la hoja de estilos
  
  //defino las coordenadas del popup relativas a donde esta el crusor
  newDiv.style.top=posY-25+"px";
  newDiv.style.left=posX+15+"px";

  document.body.appendChild(newDiv);
}

/* Esconder el div de relevantContent */
function hideRelevantContent(){
  var delChild=document.getElementById(this.getAttribute("id")+"-2");

  if (delChild!=null)
    document.body.removeChild(delChild);
}


/**********************************************************************/
function switchFrontImg(){

  if (document.getElementById("mainPageContentWrapper")==null){
    clearInterval(frontImgIntervanID);
    return 0;
  }
  
  var frontImgWrapper=document.getElementById("mainPageContentWrapper");
  var frontImgOldChild=frontImgWrapper.childNodes[1];  
  var frontImgNewChild=document.createElement("img");
  
  //necesario para los efectos de fadeIn y fadeOut con jQuery
  frontImgOldChild.setAttribute("id", "img1");
  
  //copiamos los mismos atributos del viejo al nuevo hijo y le definimos algunos necesarios
  frontImgNewChild.setAttribute("id", "img2");
  frontImgNewChild.setAttribute("alt", frontImgOldChild.getAttribute("alt")); 
  frontImgNewChild.setAttribute("title", frontImgOldChild.getAttribute("title"));
  
  frontImgNewChild.style.setProperty("width", frontImgOldChild.style.getPropertyValue("width"));
  frontImgNewChild.style.setProperty("display", "none");  //<-- necesario para $().fadeIn

  /* Para saber que imagen debemos mostrar en el frontpanel */
  var reg = new RegExp("..\/?\/*1.png", "i");
  
  if (reg.test(frontImgOldChild.getAttribute("src")))
    frontImgNewChild.setAttribute("src", "/sites/default/files/images/frontIMG-2.png");
  else
    frontImgNewChild.setAttribute("src", "/sites/default/files/images/frontIMG-1.png");
  
  
  (function ($){
    $('#img1').fadeOut(600,function(){
      frontImgWrapper.removeChild(frontImgOldChild);
      frontImgWrapper.appendChild(frontImgNewChild);
      
      $('#img2').fadeIn(600);
    });
  })(jQuery);
}



/**/
function switchMainLinkImg(element,evt){
  //console.log(element.firstChild.getAttribute("src"));
  var str;
  
  if (element.firstChild.getAttribute("src").indexOf("_over.png")!=-1)
    str=element.firstChild.getAttribute("src").replace("_over.png", ".png");
  else
    str=element.firstChild.getAttribute("src").replace(".png", "_over.png");
  
  element.firstChild.setAttribute("src", str);
  
}
